package com.zb.common.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import org.springframework.web.bind.annotation.Mapping;

import com.zb.common.po.enums.LogType;


@Target({ ElementType.METHOD, ElementType.TYPE })
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Mapping
public @interface WriteLog {

    /**
     * 操作对象 opObject:(这里用一句话描述这个方法的作用)
     * 
     * @author luohaili
     * @return
     * @since JDK 1.7
     */
    String opObject() default "";

    /**
     * 操作描述 opDescription:(这里用一句话描述这个方法的作用)
     * 
     * @author luohaili
     * @return
     * @since JDK 1.7
     */
    String opDescription() default "";

    int[] paramIndexes() default {};

    LogType logType() default LogType.OPERATION;
}
